Linux 服务器使用 docker 运行 Alas |
您所在的位置:网站首页 › bilibili修改密码后 其他设备的账号会退出吗 › Linux 服务器使用 docker 运行 Alas |
前言 Alas上新了 AlasApp_0.4.1_fullcn 版本,因为 Electron 的原因,可能不支持在 win7/8 和 winserver2012 设备上运行 我的第一篇专栏写的是使用 winserver2012 服务器运行 alas , 日后可能会有新的问题 ( 现在能用就别管 所以我在这里写一份比较小白的 linux 安装 Alas 教程 免责声明 我是文科专业一路读上来的,计算机什么的我都不懂 我的技术奇菜无比,故本文必然破绽百出。您若发现问题还请温柔提醒,不要人参公鸡。 本文内容请您自行判断是否可信可靠可用,若您根据本文内容建立和使用 VPS 服务器时出了任何问题和不良结果,本人概不负责。 基于本文` 零基础用户 的目标受众,许多内容会尽力详尽说明,所以语言偏啰嗦,请做好心理准备。 原料准备 准备一个国内的 linux 服务器/设备 如果使用 服务器 + 云手机 运行Alas,需要两台设备都要在 CN 网络环境内 如果 服务器在深圳 ,云手机在香港,因为有墙的存在,两者的延迟可能是绕地球五圈 服务器基本设置 系统选择 服务器我在腾讯买的,其他的厂商可能后台会不一样 这里因为个人习惯,我使用了 debian11 系统。 用 ubuntu 也可以 重置密码 勾选离线重置,等待重启 SSH工具 electerm:https://electerm.html5beta.com GitHub地址: https://github.com/electerm/electerm 界面挺好看的,就是运存占用稍微有点大。你下载其它的SSH工具也可以 远程登陆 打开 electerm ,点击左侧的加号 主机地址: 填你服务器的公网ip地址 用户名: 填服务器默认的 root 用户 密码: 填你在上一步重置的密码 端口: 填默认的 22 端口 保存并连接 如果你的信息都填写正确,你将会看到类似下图的界面,说明已登录成功 认识命令行窗口 这个界面,就等于远程服务器的 桌面 ,但它没有你熟悉的图标和鼠标,没有绚丽的色彩,有的只是简单文字,这就是 命令行界面 接下来的所有操作, 都会在这个命令行界面中完成,你说一句,它做一句 第一次更新 linux 软件 Linux 下,每个 APP 都叫做一个“包” (package)。管理 APP 的程序自然就叫做“包管理器”(Package Manager)。你可以通过它安装、更新、卸载各种软件。现在你只需要知道 Debian 系统的包管理器叫做 `apt` 即可。接下来,我们就先使用 `apt` 做一次软件的全面更新,让你熟悉它的基本操作。 现在输入第一条命令 然后输入第二条命令,并在询问是否继续安装 `(Y/n)` 时输入 `y` 并回车确认,开始安装 完整流程图示意如下 服务器安全防护 我们的服务器不具有太高的价值, 就挂个 Alas ,一般不会吸引到高水平的攻击,需要面对的基本都是一些自动化脚本的恶意扫描和登录尝试,跟着本文做一些基础的防护即可 将 SSH 登陆端口设置为 非22端口 SSH 远程登录程序配置文件位置: /etc/ssh/sshd_config 在 Windows 下,你会找到文件并双击,在 Linux 下该怎么办呢? 文件名太长的话,可以按 tab 补全 比如说你已经输入了 nano /etc/ssh/sshd ,此时你按一下键盘的 tab 键,会自动补全至 nano /etc/ssh/sshd_config nano: 你可以粗略的理解为 windows 的记事本 文件打开后,你就进入了 nano 的界面,稍微观察一下,你会发现,它把重要的快捷键都显示在屏幕下方了(下图红框内),直接开卷考试、不用死记硬背 ^G: 键盘 ctrl + G 弹出帮助 ^O: 键盘 ctrl + O 保存文件 ^X: 键盘 ctrl + O 退出 ^W: 键盘 ctrl + W 搜索文本 第一步: 使用 ctrl + w 进入搜索模式,输入 port 22 并回车 第二步: 删除 22 并修改成 11451 , ( 在 1024 - 65535 之间取一个合理的整数就好了 说明: 如果这一行开头有个 # ,证明这一行 “不生效" (被注释掉了),把 # 删掉就好。 第三步: 保存文件并退出,保存是 ctrl+o 然后 按回车,退出是 ctrl+x 第四步: 放行相关端口 由于腾讯轻量云服务器的限制,防火墙规则只能在腾讯的后台修改,所以本文不使用 ufw。统一使用腾讯云的后台来修改防火墙规则 第五步: 重启 ssh 服务,使变更生效 第六步: 使用新 ssh 端口登陆服务器 先不要关闭当前的窗口,新建一个配置进行连接 成功登陆即可关闭旧 22 窗口,同时在防火墙处删去旧的 22 规则 这里也可以顺便把 ping 规则删了 使用非 root 用户进行登陆 Linux 系统中的 root ,不仅仅是一个管理员账号那么简单。它是整个系统的主宰,是至高无上的神。一旦root 账号出现安全问题,整个系统都只能任人鱼肉 第一步: 新建一个非 root 用户 需要你输入两次一样的密码,密码在输入过程中不可见 然后需要输入一些个人信息,狂按回车,最后按 Y 就好了 第二步: 赋予普通用户 sudo 权限 sudo: 让普通用户临时获得 root 的权限 腾讯云的 debian 服务器默认安装了 sudo ( 没安就手动安装一遍 第三步: 把 cookmaker 用户加入 sudo 名单里 在 User Privilege Specification 下加入一行 cookmaker ALL=(ALL) NOPASSWD: ALL 即可 说明: cookmaker 改成你自己的用户名 我要特别说明的是 NOPASSWD 这个设置,它的意思是 cookmaker 用户临时使用`root`权限时,不用额外输入密码。这与一般的安全建议相反 如果你希望遵守传统习惯、每次使用 sudo 时需要输入密码,那么这一行改成 cookmaker ALL=(ALL:ALL) ALL 即可。 第四步: 禁用 root 用户登陆 找到 PermitRootLogin Yes 这一项,然后把它后面的设定值改为 no 即可。还记得怎么操作吗? 使用 ctrl + w 进入搜索模式,输入 PermitRootLogin 并回车 删除 yes 并改成 no 保存文件并退出。还记得怎么操作吗? 保存是 ctrl+o 然后按回车,退出是 ctrl+x 跟上面一样,先不要关闭当前的命令行窗口,新建一个配置进行连接 成功连上了再关闭旧窗口,你可以看到,此时左侧的用户名已经从 root 变成了 cookmaker 如果你要切换成 root 用户的话 从 root 用户切回 cookmaker 用户的话 使用密钥登陆而不是密码登陆 在非root用户下 使用 ssh-keygen 生成 ed25519 密钥 输入按回车,窗口输出如下 继续回车,输出如下 注意两行内容 私钥需要下载到你的本地电脑上,公钥放在你的服务器上 下载私钥在你的电脑上 右键下载私钥,私钥下载完后,从服务器上删除 请注意保存好你的 私钥 。没有私钥登不上服务器别找我 将 PasswordAuthentication 改成 no 将 PubkeyAuthentication 改成 yes 说明: 如果这一行开头有个 # ,证明这一行 “不生效" (被注释掉了),把 # 删掉就好。 先不要关闭当前的命令行窗口,新建一个配置进行连接 如果你在使用 ssh-keygen 的以下的两个过程中输入了内容,就是创建了一个 "私钥密码" 安装 Alas 是的,墨迹了那么久,终于要开始安装alas了 这里只演示 Docker 安装 安装Docker 这里我只写国内服务器环境,TW,HK,MO和外国网络。都没有墙,部分下载的地址会不一样,自己google 将以下内容复制进去 限制 docker 容器日志大小,保存并退出 下载 Alas 源码 源码下载完毕 其中 蓝色的 AzurLaneAutoScript 就是 Alas 的源码文件夹了 第一步,修改Alas配置文件 Alas 配置文件示例保存在 config 目录下 默认配置 修改Dockerfile 开始构建镜像 稍作等待 10~20分钟 镜像构建完毕 启动 Alas docker-compose.yml 配置如下,根据实际情况进行修改 保存,新建一个会话来启动 alas 启动后会有一行 git 报错 进入容器内部后如下显示 输入 在防火墙放行相应端口,浏览器输入公网 ip地址:端口 ,即可正常使用 注意,直接将 Alas 暴露到公网上请务必设置 webui 密码 Screen 科普 当我们使用 ssh 连接上服务器时,会创建一个会话窗口,在这里我把它叫做 ssh 窗口 然后输入 此时新的对话长这样,只有你的用户名字 然后按住 ctrl + A + D , 就可以回到刚才的 ssh 窗口中 ( screen test1 仍在后台运行 当会话被分离或网络中断时,screen 会话中启动的进程仍将运行,我们可以随时重新连接到 screen 会话 一些常用指令 Alas 报错推送 发生无法处理的异常后,使用 Onepush 推送一条错误信息。 配置方法见文档: https://github.com/LmeSzinc/AzurLaneAutoScript/wiki/Onepush-configuration-%5BCN%5D 这里只演示QQ机器人的方法,邮箱推送自己看文档 先阅读 Alas 使用手册 的 gocq 部分,拿自己电脑成功登陆一遍框架 gocqhttp github 发行地址 https://github.com/Mrs4s/go-cqhttp/releases 将本地生成的 device.json 和 session.token 上传到服务器的 gocq 文件夹内 在线查看 Alas log 因为使用 linux 服务器的原因,如果 Alas 报错了,需要查看报错截图和log,都要 ssh 上去服务器下载,有点麻烦。 手机也没有合适的 ssh 软件,有点不方便 这里我使用 nginx 建立一个静态网页来访问Alas的log 在 http{ } 这个块里面插入以下内容 如图所示 复制的时候注意删去我注释的内容 保存 在防火墙放行相应端口,浏览器输入公网 ip地址:端口 ,即可正常使用 差不多这种效果 手机浏览器访问 Alas网页需要浏览器有较新的内核 log 文件夹两三个月上去清一次就好了 如果你报错很多的话,可以一个月一次 我觉得挂个 Alas,不是很有必要折腾一些更加复杂的安全策略 我认为上个密码就差不多了,弄别的东西学习成本也比较高,也要折腾比较久 服务器也没什么重要的东西,你的公网ip和端口别随便泄露出去就好了 怕死的话去腾讯云设置个告警策略 https://cloud.tencent.com/document/product/213/5179 负载超过80%,使用流量超过80% ,小马哥的员工会打电话给你,然后你就上去拔网线 顺便设置几个快照,服务器爆炸了可以还原回去 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |